/** **/
package com.zte.claa.inficombo.csa.app.model.dev;

import java.io.Serializable;

/**
 * 用于mybatis的数据库访问
 * 
 * @author 0283000115
 *
 */
public class DataModelBean implements Serializable {
	public static final byte DT_BYTE 	= 1;
	public static final byte DT_SHORT 	= 2;
	public static final byte DT_INT 	= 3;
	public static final byte DT_LONG 	= 4;
	public static final byte DT_FLOAT 	= 5;
	public static final byte DT_DOUBLE 	= 6;
	public static final byte DT_STR 	= 7;
	
    /**
     * 设备类型ID
     */
    private String typeid;

    /**
     * 设备子类型ID
     */
    private String subtype;

    /**
     * 模型字段名称
     */
    private String fieldname;

    /**
     * 模型字段描述
     */
    private String fielddescp;

    /**
     * 模型字段数据类型
     */
    private Byte datatype = -1;

    /**
     * 字段值单位
     */
    private String dataunit;

    /**
     * 模型字段序号
     */
    private Short fieldsno;
    
    /**
     * 数据字段内容长度.
     */
    private Short datalen;

    /**
     * 备注
     */
    private String remark;
    
    /**
     * 0 普通字段 1 主键 
     */
    private byte iskey = 0;

    /**
     * t_combo_datamodel
     */
    private static final long serialVersionUID = 1L;

    /**
     * 设备类型ID
     * @return TYPEID 设备类型ID
     */
    public String getTypeid() {
        return typeid;
    }

    /**
     * 设备类型ID
     * @param typeid 设备类型ID
     */
    public void setTypeid(String typeid) {
        this.typeid = typeid;
    }

    /**
     * 设备子类型ID
     * @return SUBTYPE 设备子类型ID
     */
    public String getSubtype() {
        return subtype;
    }

    /**
     * 设备子类型ID
     * @param subtype 设备子类型ID
     */
    public void setSubtype(String subtype) {
        this.subtype = subtype;
    }

    /**
     * 模型字段名称
     * @return FIELDNAME 模型字段名称
     */
    public String getFieldname() {
        return fieldname;
    }

    /**
     * 模型字段名称
     * @param fieldname 模型字段名称
     */
    public void setFieldname(String fieldname) {
        this.fieldname = fieldname;
    }

    /**
     * 模型字段描述
     * @return FIELDDESCP 模型字段描述
     */
    public String getFielddescp() {
        return fielddescp;
    }

    /**
     * 模型字段描述
     * @param fielddescp 模型字段描述
     */
    public void setFielddescp(String fielddescp) {
        this.fielddescp = fielddescp;
    }

    /**
     * 模型字段数据类型
     * @return DATATYPE 模型字段数据类型
     */
    public Byte getDatatype() {
        return datatype;
    }

    /**
     * 模型字段数据类型
     * @param datatype 模型字段数据类型
     */
    public void setDatatype(Byte datatype) {
        this.datatype = datatype;
    }

    /**
     * 字段值单位
     * @return DATAUNIT 字段值单位
     */
    public String getDataunit() {
        return dataunit;
    }

    /**
     * 字段值单位
     * @param dataunit 字段值单位
     */
    public void setDataunit(String dataunit) {
        this.dataunit = dataunit;
    }

    /**
     * 模型字段序号
     * @return FIELDSNO 模型字段序号
     */
    public Short getFieldsno() {
        return fieldsno;
    }

    /**
     * 模型字段序号
     * @param fieldsno 模型字段序号
     */
    public void setFieldsno(Short fieldsno) {
        this.fieldsno = fieldsno;
    }

    /**
     * 备注
     * @return REMARK 备注
     */
    public String getRemark() {
        return remark;
    }

    /**
     * 备注
     * @param remark 备注
     */
    public void setRemark(String remark) {
        this.remark = remark;
    }

	/**
	 * @return the datalen
	 */
	public Short getDatalen() {
		return datalen;
	}

	/**
	 * @param datalen the datalen to set
	 */
	public void setDatalen(Short datalen) {
		this.datalen = datalen;
	}
    
	public byte getIskey() {
		return iskey;
	}

	public void setIskey(byte iskey) {
		this.iskey = iskey;
	}

	public String toString(){
		StringBuffer sb = new StringBuffer();
		sb.append("devtype").append(this.typeid).append(", ");
		sb.append("fieldname").append(this.fieldname).append(", ");
		sb.append("fielddescp").append(this.fielddescp);
		return sb.toString();
	}
    
    /**
     * 
     */
    public boolean equals(Object dest){
    	if(dest == null){
    		return false;
    	}    	
    	if(dest == this){
    		return true;
    	}
    	if(!DataModelBean.class.isInstance(dest)){
    		return false;
    	}
    	DataModelBean dm = (DataModelBean)dest;
    	/* this.subtype.equals(dm.getSubtype()) && */
    	return (this.typeid.equals(dm.getTypeid()) &&    			
    			this.fieldname.equals(dm.getFieldname()));    	
    }
}
